package com.ruicar.afs.cloud.bizcommon.rules.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruicar.afs.cloud.bizcommon.enums.rules.RuleItemType;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import lombok.Data;

/**
 * AfsRuleItem
 * <p>Description: </p>
 *
 * @author Fzero
 * @version 1.0
 * @date create on 2020-05-14 20:08:19
 * @since 1.0
 */
@TableName("afs_rule_item")
@Data
public class AfsRuleItem extends BaseEntity<AfsRuleItem> {
    @JsonSerialize(using = ToStringSerializer.class)
    /** 规则id */
    private Long ruleId;
    /**
     * 配置项类型;配置项类型
     * condition-条件类型
     * then-条件结果类型
     * choice-选择项
     * express-表达式类型
     * and-并且类型
     * or-或者类型
     */
    private RuleItemType itemType;
    /**
     * 配置项中文
     */
    private String itemLabel;
    /**
     * 配置项符号
     */
    private String itemKey;
    /**
     * 是否为非
     */
    private boolean itemNot;
    /**
     * 配置项顺序
     */
    private Integer itemSortOrder;
    /**
     * 配置项父id;配置项父id
     * 如果为父配置项为顶级则父id为0
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long parentId;

}
